# Copyright (c) Advanced Micro Devices, Inc., or its affiliates.
# SPDX-License-Identifier: MIT

# ONLY XDL_AND_WMMA_KERNELS
add_instance_library(device_grouped_gemm_instance
   device_grouped_gemm_xdl_f16_f16_f16_mk_kn_mn_instance.cpp
   device_grouped_gemm_xdl_f16_f16_f16_mk_nk_mn_instance.cpp
   device_grouped_gemm_xdl_f16_f16_f16_km_kn_mn_instance.cpp
   device_grouped_gemm_xdl_f16_f16_f16_km_nk_mn_instance.cpp
   
   device_grouped_gemm_xdl_splitk_f16_f16_f16_mk_nk_mn_instance.cpp
   device_grouped_gemm_xdl_splitk_f16_f16_f16_mk_nk_mn_irregular_instance.cpp
   
   device_grouped_gemm_xdl_splitk_f16_f16_f16_mk_kn_mn_instance.cpp
   device_grouped_gemm_xdl_splitk_f16_f16_f16_mk_kn_mn_irregular_pv1_inter.cpp
   device_grouped_gemm_xdl_splitk_f16_f16_f16_mk_kn_mn_irregular_pv1.cpp
   device_grouped_gemm_xdl_splitk_f16_f16_f16_mk_kn_mn_irregular_pv2.cpp
   
   device_grouped_gemm_xdl_splitk_bf16_bf16_bf16_km_kn_mn_irregular_pv1_inter.cpp
   device_grouped_gemm_xdl_splitk_bf16_bf16_bf16_km_kn_mn_irregular_pv1.cpp
   device_grouped_gemm_xdl_splitk_bf16_bf16_bf16_km_kn_mn_irregular_pv2.cpp
   
   device_grouped_gemm_xdl_splitk_bf16_bf16_bf16_mk_kn_mn_irregular_pv1_inter.cpp
   device_grouped_gemm_xdl_splitk_bf16_bf16_bf16_mk_kn_mn_irregular_pv1.cpp
   device_grouped_gemm_xdl_splitk_bf16_bf16_bf16_mk_kn_mn_irregular_pv2.cpp

   device_grouped_gemm_xdl_splitk_bf16_bf16_bf16_mk_nk_mn_irregular_pv1_inter.cpp
   device_grouped_gemm_xdl_splitk_bf16_bf16_bf16_mk_nk_mn_irregular_pv1.cpp
   device_grouped_gemm_xdl_splitk_bf16_bf16_bf16_mk_nk_mn_irregular_pv2.cpp

   device_grouped_gemm_xdl_splitk_f16_f8_f16_mk_kn_mn_irregular_instance.cpp
   device_grouped_gemm_xdl_splitk_f8_f16_f16_mk_kn_mn_irregular_instance.cpp

   device_grouped_gemm_multiple_d_splitk_xdl_two_stage_f16_f16_f16_mk_kn_mn_instance.cpp
   device_grouped_gemm_multiple_d_splitk_xdl_two_stage_bf16_bf16_bf16_mk_kn_mn_instance.cpp
   device_grouped_gemm_multiple_d_splitk_xdl_two_stage_bf16_bf16_bf16_mk_nk_mn_instance.cpp
   device_grouped_gemm_multiple_d_splitk_xdl_two_stage_bf16_i8_bf16_mk_kn_mn_instance.cpp
   device_grouped_gemm_multiple_d_splitk_xdl_two_stage_bf16_i8_bf16_mk_nk_mn_instance.cpp
   
   device_grouped_gemm_wmma_universal_f8_f16_f16_mk_kn_mn_instance.cpp
   device_grouped_gemm_wmma_universal_f16_f8_f16_mk_kn_mn_instance.cpp

   device_grouped_gemm_wmma_universal_f16_f16_f16_mk_kn_mn_instance.cpp
   device_grouped_gemm_wmma_universal_f16_f16_f16_mk_nk_mn_instance.cpp
   device_grouped_gemm_wmma_universal_f16_f16_f16_km_kn_mn_instance.cpp
   device_grouped_gemm_wmma_universal_f16_f16_f16_km_nk_mn_instance.cpp
   
   device_grouped_gemm_wmma_universal_bf16_bf16_bf16_mk_kn_mn_instance.cpp
   device_grouped_gemm_wmma_universal_bf16_bf16_bf16_mk_nk_mn_instance.cpp
   device_grouped_gemm_wmma_universal_bf16_bf16_bf16_km_kn_mn_instance.cpp
   device_grouped_gemm_wmma_universal_bf16_bf16_bf16_km_nk_mn_instance.cpp
)
